package com.fduss.artStore.entity;

import java.math.BigDecimal;

/**
 * @Author duocai wu
 * @Date 2017/6/24
 * @Time 15:51
 */
public class Artwork {

    private int artWorkId;
    private Integer artistId;
    private String imageFileName;
    private String title;
    private String description;
    private String excerpt;
    private Integer artWorkType;
    private Integer yearOfWork;
    private Integer width;
    private Integer height;
    private String medium;
    private String originalHome;
    private Integer galleryId;
    private BigDecimal cost;
    private BigDecimal msrp;
    private String artWorkLink;
    private String googleLink;

    public int getArtWorkId() {
        return artWorkId;
    }

    public void setArtWorkId(int artWorkId) {
        this.artWorkId = artWorkId;
    }

    public Integer getArtistId() {
        return artistId;
    }

    public void setArtistId(Integer artistId) {
        this.artistId = artistId;
    }

    public String getImageFileName() {
        return imageFileName;
    }

    public void setImageFileName(String imageFileName) {
        this.imageFileName = imageFileName;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getExcerpt() {
        return excerpt;
    }

    public void setExcerpt(String excerpt) {
        this.excerpt = excerpt;
    }

    public Integer getArtWorkType() {
        return artWorkType;
    }

    public void setArtWorkType(Integer artWorkType) {
        this.artWorkType = artWorkType;
    }

    public Integer getYearOfWork() {
        return yearOfWork;
    }

    public void setYearOfWork(Integer yearOfWork) {
        this.yearOfWork = yearOfWork;
    }

    public Integer getWidth() {
        return width;
    }

    public void setWidth(Integer width) {
        this.width = width;
    }

    public Integer getHeight() {
        return height;
    }

    public void setHeight(Integer height) {
        this.height = height;
    }

    public String getMedium() {
        return medium;
    }

    public void setMedium(String medium) {
        this.medium = medium;
    }

    public String getOriginalHome() {
        return originalHome;
    }

    public void setOriginalHome(String originalHome) {
        this.originalHome = originalHome;
    }

    public Integer getGalleryId() {
        return galleryId;
    }

    public void setGalleryId(Integer galleryId) {
        this.galleryId = galleryId;
    }

    public BigDecimal getCost() {
        return cost;
    }

    public void setCost(BigDecimal cost) {
        this.cost = cost;
    }

    public BigDecimal getMsrp() {
        return msrp;
    }

    public void setMsrp(BigDecimal msrp) {
        this.msrp = msrp;
    }

    public String getArtWorkLink() {
        return artWorkLink;
    }

    public void setArtWorkLink(String artWorkLink) {
        this.artWorkLink = artWorkLink;
    }

    public String getGoogleLink() {
        return googleLink;
    }

    public void setGoogleLink(String googleLink) {
        this.googleLink = googleLink;
    }

    public String getDefaultDescription() {
        return "This is a default description. please help us to " +
        "fill this description! This is a default description. please help us to " +
                "fill this description!! This is a default description. please help us to " +
                "fill this description!!! ";
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Artwork artwork = (Artwork) o;

        if (artWorkId != artwork.artWorkId) return false;
        if (artistId != null ? !artistId.equals(artwork.artistId) : artwork.artistId != null) return false;
        if (imageFileName != null ? !imageFileName.equals(artwork.imageFileName) : artwork.imageFileName != null)
            return false;
        if (title != null ? !title.equals(artwork.title) : artwork.title != null) return false;
        if (description != null ? !description.equals(artwork.description) : artwork.description != null)
            return false;
        if (excerpt != null ? !excerpt.equals(artwork.excerpt) : artwork.excerpt != null) return false;
        if (artWorkType != null ? !artWorkType.equals(artwork.artWorkType) : artwork.artWorkType != null)
            return false;
        if (yearOfWork != null ? !yearOfWork.equals(artwork.yearOfWork) : artwork.yearOfWork != null) return false;
        if (width != null ? !width.equals(artwork.width) : artwork.width != null) return false;
        if (height != null ? !height.equals(artwork.height) : artwork.height != null) return false;
        if (medium != null ? !medium.equals(artwork.medium) : artwork.medium != null) return false;
        if (originalHome != null ? !originalHome.equals(artwork.originalHome) : artwork.originalHome != null)
            return false;
        if (galleryId != null ? !galleryId.equals(artwork.galleryId) : artwork.galleryId != null) return false;
        if (cost != null ? !cost.equals(artwork.cost) : artwork.cost != null) return false;
        if (msrp != null ? !msrp.equals(artwork.msrp) : artwork.msrp != null) return false;
        if (artWorkLink != null ? !artWorkLink.equals(artwork.artWorkLink) : artwork.artWorkLink != null)
            return false;
        if (googleLink != null ? !googleLink.equals(artwork.googleLink) : artwork.googleLink != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = artWorkId;
        result = 31 * result + (artistId != null ? artistId.hashCode() : 0);
        result = 31 * result + (imageFileName != null ? imageFileName.hashCode() : 0);
        result = 31 * result + (title != null ? title.hashCode() : 0);
        result = 31 * result + (description != null ? description.hashCode() : 0);
        result = 31 * result + (excerpt != null ? excerpt.hashCode() : 0);
        result = 31 * result + (artWorkType != null ? artWorkType.hashCode() : 0);
        result = 31 * result + (yearOfWork != null ? yearOfWork.hashCode() : 0);
        result = 31 * result + (width != null ? width.hashCode() : 0);
        result = 31 * result + (height != null ? height.hashCode() : 0);
        result = 31 * result + (medium != null ? medium.hashCode() : 0);
        result = 31 * result + (originalHome != null ? originalHome.hashCode() : 0);
        result = 31 * result + (galleryId != null ? galleryId.hashCode() : 0);
        result = 31 * result + (cost != null ? cost.hashCode() : 0);
        result = 31 * result + (msrp != null ? msrp.hashCode() : 0);
        result = 31 * result + (artWorkLink != null ? artWorkLink.hashCode() : 0);
        result = 31 * result + (googleLink != null ? googleLink.hashCode() : 0);
        return result;
    }
}
